import 'dart:io';

void main(){
  // 能用 但是不够好用，如果有 async await 就更好了
  //  userLogin().then((token){
  //   // print(token);
  //   saveToken(token).then((res){

  //   });
  //  });
  print('top');
  loginFunc();
  print('end');
}

loginFunc() async{
  print('开始执行代码');
  final token = await userLogin();
  await saveToken(token);
  print('代码执行完毕');
}


// 模拟登录 3 秒钟 获取 token
Future<String> userLogin(){
  return Future((){
    print('开始登录');
    sleep(Duration(seconds: 3));
    print('登录成功');
    return 'user-token';
  });
}
// 模拟保存 token 2 秒钟 将 token 保存到本地
Future saveToken(String token){
  return Future((){
    print('开始保存 token token 的值为$token');
    sleep(Duration(seconds: 2));
    print('token 保存完毕');
  });
}